import type { GeneratedEtsLibFile } from "../../types/generated";

export const FILE: GeneratedEtsLibFile = {
  path: 'ets/api/@ohos.data.unifiedDataChannel.d.ts',
  content: "/*\n * Copyright (c) 2023-2024 Huawei Device Co., Ltd.\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/**\n * @file\n * @kit ArkData\n */\nimport { AsyncCallback } from './@ohos.base';\nimport image from \"./@ohos.multimedia.image\";\nimport Want from \"./@ohos.app.ability.Want\";\n/**\n * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data\n * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides\n * definitions for uniform data types, such as text and image, to streamline data interaction between different\n * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are\n * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path.\n *\n * @namespace unifiedDataChannel\n * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n * @since 10\n */\n/**\n * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data\n * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides\n * definitions for uniform data types, such as text and image, to streamline data interaction between different\n * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are\n * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path.\n *\n * @namespace unifiedDataChannel\n * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n * @atomicservice\n * @since 11\n */\n/**\n * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data\n * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides\n * definitions for uniform data types, such as text and image, to streamline data interaction between different\n * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are\n * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path.\n *\n * @namespace unifiedDataChannel\n * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n * @crossplatform\n * @atomicservice\n * @since 14\n */\ndeclare namespace unifiedDataChannel {\n    /**\n     * Types of scope that UnifiedData can be used.\n     * @enum { number }\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 12\n     */\n    enum ShareOptions {\n        /**\n         * IN_APP indicates that only use in the same app is allowed.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        IN_APP,\n        /**\n         * CROSS_APP indicates that use in any app in this device is allowed.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        CROSS_APP\n    }\n    /**\n     * Indicated delay get UnifiedData\n     *\n     * @typedef {function} GetDelayData\n     * @param { string } type - the type of UnifiedData required.\n     * @returns { UnifiedData } Return the UnifiedData required.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 12\n     */\n    type GetDelayData = (type: string) => UnifiedData;\n    /**\n     * Indicates type of value.\n     * @typedef {number | string | boolean | image.PixelMap | Want | ArrayBuffer | object | null | undefined}\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 12\n     */\n    /**\n     * Indicates type of value.\n     * @typedef {number | string | boolean | image.PixelMap | Want | ArrayBuffer | object | null | undefined}\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    type ValueType = number | string | boolean | image.PixelMap | Want | ArrayBuffer | object | null | undefined;\n    /**\n     * Describe the unified data properties.\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 12\n     */\n    class UnifiedDataProperties {\n        /**\n         * extra property data. key-value pairs.\n         * @type { ?Record<string, object> }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        extras?: Record<string, object>;\n        /**\n         * the user-defined tag of a UnifiedData object.\n         * @type { ?string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        tag?: string;\n        /**\n         * a timestamp, which indicates when data is written.\n         * @type { ?Date }\n         * @readonly\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        readonly timestamp?: Date;\n        /**\n         * Indicates the scope of clipboard data which can be used.\n         * If it is not set or is incorrectly set, The default value is CrossDevice.\n         * @type { ?ShareOptions }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        shareOptions?: ShareOptions;\n        /**\n         * Indicated delay get UnifiedData.\n         * @type { ?GetDelayData }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        getDelayData?: GetDelayData;\n    }\n    /**\n     * Describe the unified data.\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified data.\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified data.\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class UnifiedData {\n        /**\n         * Create unified data with a record\n         *\n         * @param { UnifiedRecord } record - Record will add into unified data.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Create unified data with a record\n         *\n         * @param { UnifiedRecord } record - Record will add into unified data.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n        * Create unified data with a record\n        *\n        * @param { UnifiedRecord } record - Record will add into unified data.\n        * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n        * <br>2.Incorrect parameters types.\n        * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n        * @crossplatform\n        * @atomicservice\n        * @since 14\n        */\n        constructor(record: UnifiedRecord);\n        /**\n         * Create a empty unified data.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * Create a empty unified data.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        constructor();\n        /**\n         * Add a record into unified data\n         *\n         * @param { UnifiedRecord } record - Record will add into unified data.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Add a record into unified data\n         *\n         * @param { UnifiedRecord } record - Record will add into unified data.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Add a record into unified data\n         *\n         * @param { UnifiedRecord } record - Record will add into unified data.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        addRecord(record: UnifiedRecord): void;\n        /**\n         * Get all records of unified data\n         *\n         * @returns { Array<UnifiedRecord> } Return the records of unified data\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Get all records of unified data\n         *\n         * @returns { Array<UnifiedRecord> } Return the records of unified data\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n        * Get all records of unified data\n        *\n        * @returns { Array<UnifiedRecord> } Return the records of unified data\n        * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n        * @crossplatform\n        * @atomicservice\n        * @since 14\n        */\n        getRecords(): Array<UnifiedRecord>;\n        /**\n         * Checks whether this UnifiedData object contains the specified data type, including the data types added by using\n         * the addEntry function.\n         * For file types, if the type set of UnifiedData contains general.jpeg, true is returned when the hasType API is\n         * called to check whether the general.image type is included, because the general.jpeg type belongs to the\n         * general.image type.\n         * @param { string } type - indicates to query data type.\n         * @returns { boolean } if having mimeType in UnifiedData returns true, else returns false.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * Checks whether this UnifiedData object contains the specified data type, including the data types added by using\n         * the addEntry function.\n         * For file types, if the type set of UnifiedData contains general.jpeg, true is returned when the hasType API is\n         * called to check whether the general.image type is included, because the general.jpeg type belongs to the\n         * general.image type.\n         * @param { string } type - indicates to query data type.\n         * @returns { boolean } if having mimeType in UnifiedData returns true, else returns false.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        hasType(type: string): boolean;\n        /**\n         * UTD types of all content in the UnifiedData.\n         * @returns { Array<string> } type of array\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * UTD types of all content in the UnifiedData.\n         * @returns { Array<string> } type of array\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        getTypes(): Array<string>;\n        /**\n         * UnifiedData properties.\n         * @type { UnifiedDataProperties }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        properties: UnifiedDataProperties;\n    }\n    /**\n     * Summarizes the data information of the unifiedData object, including the data type and size.\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Summarizes the data information of the unifiedData object, including the data type and size.\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    class Summary {\n        /**\n         * A map for each type and data size, key is data type, value is the corresponding data size\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * A map for each type and data size, key is data type, value is the corresponding data size\n         *\n         * @type { Record<string, number> }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        summary: Record<string, number>;\n        /**\n         * Total data size of data in Bytes\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Total data size of data in Bytes\n         *\n         * @type { number }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        totalSize: number;\n    }\n    /**\n     * Describe the unified record\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified record\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * An abstract definition of the data content supported by the UDMF. A UnifiedRecord object contains one or more data\n     * records, for example, a text record, an image record, or an HTML record. Since API version 15, different styles of\n     * the same content can be added to a UnifiedRecord object. Data users can obtain the corresponding styles as\n     * required.\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class UnifiedRecord {\n        /**\n         * Get type of unified record\n         *\n         * @returns { string } Return the type of unified data\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Get type of unified record\n         *\n         * @returns { string } Return the type of unified data\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Get type of unified record\n         *\n         * @returns { string } Return the type of unified data\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        getType(): string;\n        /**\n         * Create unified record.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * Create unified record.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        constructor();\n        /**\n         * Create unified record by type and value.\n         *\n         * @param { string } type - indicates to data type of unified record. It can not be empty. When type of value is\n         * object, parameter type must be pixel-map or want UTD type.\n         * @param { ValueType } value - indicates to value of unified record.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types;\n         * <br>3.Parameter verification failed.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * Create unified record by type and value.\n         *\n         * @param { string } type - indicates to data type of unified record. It can not be empty. When type of value is\n         * object, parameter type must be pixel-map or want UTD type.\n         * @param { ValueType } value - indicates to value of unified record.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types;\n         * <br>3.Parameter verification failed.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        constructor(type: string, value: ValueType);\n        /**\n         * Get the value of unified record.\n         *\n         * @returns { ValueType } Return the value of unified record.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 12\n         */\n        /**\n         * Get the value of unified record.\n         *\n         * @returns { ValueType } Return the value of unified record.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        getValue(): ValueType;\n        /**\n         * Obtains all the data types in the data record. This API can be called using the UnifiedRecord object to query all\n         * data types in the record, including the data types added using the addEntry function.\n         *\n         * @returns { Array<string> } Return the types of unified record.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        getTypes(): Array<string>;\n        /**\n         * Adds data of a specified data type and content to the current data record. You can use this API to add different\n         * data types and contents to the same data.\n         *\n         * @param { string } type - type of entry.\n         * @param { ValueType } value - value of entry.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        addEntry(type: string, value: ValueType): void;\n        /**\n         * Get an entry from unified record\n         *\n         * @param { string } type - type of entry want to get.\n         * @returns { ValueType } Return the value corresponding to the type.\n         * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n         * <br>2.Incorrect parameters types.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        getEntry(type: string): ValueType;\n        /**\n         * Get entries from unified record\n         *\n         * @returns { Record<string, ValueType> } Return all entries in the record.\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        getEntries(): Record<string, ValueType>;\n    }\n    /**\n     * Describe the unified text data\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified text data\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified text data\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class Text extends UnifiedRecord {\n        /**\n         * Indicates the details of unified text\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the details of unified text\n         *\n         * @type { ?Record<string, string> }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Indicates the details of unified text\n         *\n         * @type { ?Record<string, string> }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        details?: Record<string, string>;\n    }\n    /**\n     * Describe the unified plain text data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified plain text data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified plain text data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class PlainText extends Text {\n        /**\n         * Indicates the content of text\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the content of text\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Indicates the content of text\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        textContent: string;\n        /**\n         * Indicates the abstract of text\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the abstract of text\n         *\n         * @type { ?string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Indicates the abstract of text\n         *\n         * @type { ?string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        abstract?: string;\n    }\n    /**\n     * Describe the unified link data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified link data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified link data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class Hyperlink extends Text {\n        /**\n         * Indicates the url of a link\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the url of a link\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Indicates the url of a link\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        url: string;\n        /**\n         * Indicates the description of a link\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the description of a link\n         *\n         * @type { ?string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Indicates the description of a link\n         *\n         * @type { ?string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        description?: string;\n    }\n    /**\n     * Describe the unified html data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified html data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified html data\n     *\n     * @extends Text\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class HTML extends Text {\n        /**\n         * Indicates the content of html, with html tags\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the content of html, with html tags\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Indicates the content of html, with html tags\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        htmlContent: string;\n        /**\n         * Indicates the plain content of html\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the plain content of html\n         *\n         * @type { ?string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Indicates the plain content of html\n         *\n         * @type { ?string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        plainContent?: string;\n    }\n    /**\n     * Describe the unified file data\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified file data\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified file data\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class File extends UnifiedRecord {\n        /**\n         * Indicates the details of unified File\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the details of unified File\n         *\n         * @type { ?Record<string, string> }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * Indicates the details of unified File\n         *\n         * @type { ?Record<string, string> }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        details?: Record<string, string>;\n        /**\n         * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        uri: string;\n    }\n    /**\n     * Describe the unified image data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified image data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified image data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class Image extends File {\n        /**\n         * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        imageUri: string;\n    }\n    /**\n     * Describe the unified video data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified video data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified video data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class Video extends File {\n        /**\n         * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        videoUri: string;\n    }\n    /**\n     * Describe the unified audio data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified audio data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified audio data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class Audio extends File {\n        /**\n         * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        audioUri: string;\n    }\n    /**\n     * Describe the unified folder data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the unified folder data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Describe the unified folder data\n     *\n     * @extends File\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    class Folder extends File {\n        /**\n         * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        /**\n         * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @crossplatform\n         * @atomicservice\n         * @since 14\n         */\n        folderUri: string;\n    }\n    /**\n     * Describe system defined type data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe system defined type data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    class SystemDefinedRecord extends UnifiedRecord {\n        /**\n         * Indicates the details of system defined data\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the details of system defined data\n         *\n         * @type { ?Record<string, number | string | Uint8Array> }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        details?: Record<string, number | string | Uint8Array>;\n    }\n    /**\n     * Describe system defined form data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends SystemDefinedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe system defined form data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends SystemDefinedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    class SystemDefinedForm extends SystemDefinedRecord {\n        /**\n         * Indicates the id of form\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the id of form\n         *\n         * @type { number }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        formId: number;\n        /**\n         * Indicates the name of form\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the name of form\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        formName: string;\n        /**\n         * Indicates the bundle name of form\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the bundle name of form\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        bundleName: string;\n        /**\n         * Indicates the ability name of form\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the ability name of form\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        abilityName: string;\n        /**\n         * Indicates the module of form\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the module of form\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        module: string;\n    }\n    /**\n     * Describe system defined app item data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends SystemDefinedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe system defined app item data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends SystemDefinedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    class SystemDefinedAppItem extends SystemDefinedRecord {\n        /**\n         * Indicates the app id\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the app id\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        appId: string;\n        /**\n         * Indicates the app name\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the app name\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        appName: string;\n        /**\n         * Indicates the id of app icon\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the id of app icon\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        appIconId: string;\n        /**\n         * Indicates the id of app label\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the id of app label\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        appLabelId: string;\n        /**\n         * Indicates the bundle name of app\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the bundle name of app\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        bundleName: string;\n        /**\n         * Indicates the ability name of app\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the ability name of app\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        abilityName: string;\n    }\n    /**\n     * Describe system defined pixel map data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends SystemDefinedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe system defined pixel map data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends SystemDefinedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    class SystemDefinedPixelMap extends SystemDefinedRecord {\n        /**\n         * Indicates the raw data of pixel map\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the raw data of pixel map\n         *\n         * @type { Uint8Array }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        rawData: Uint8Array;\n    }\n    /**\n     * Describe application defined data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe application defined data(this kind of data is provided and bound to OpenHarmony,\n     * also can be parsed by system provided API)\n     *\n     * @extends UnifiedRecord\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    class ApplicationDefinedRecord extends UnifiedRecord {\n        /**\n         * Indicates the type of data, should always be started with 'ApplicationDefined.', will\n         * return error otherwise\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the type of data, should always be started with 'ApplicationDefined.', will\n         * return error otherwise\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        applicationDefinedType: string;\n        /**\n         * Indicates the raw data of application defined data\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the raw data of application defined data\n         *\n         * @type { Uint8Array }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        rawData: Uint8Array;\n    }\n    /**\n     * Describe the sharing channel that UDMF support\n     *\n     * @enum { string }\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the sharing channel that UDMF support\n     *\n     * @enum { string }\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    enum Intention {\n        /**\n         * Indicates the intention of data hub\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the intention of data hub\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        DATA_HUB = 'DataHub',\n        \n        /**\n         * Indicates the intention of drag\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @stagemodelonly\n         * @since 14\n         */\n        DRAG = 'Drag',\n        /**\n         * Indicates a system sharing channel.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @stagemodelonly\n         * @since 20\n         */\n        SYSTEM_SHARE = 'SystemShare',\n        /**\n         * Indicates a Picker channel.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @stagemodelonly\n         * @since 20\n         */\n        PICKER = 'Picker',\n        /**\n         * Indicates a menu channel.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @stagemodelonly\n         * @since 20\n         */\n        MENU = 'Menu'\n    }\n    /**\n     * Describe the optional arguments of data operation\n     *\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Describe the optional arguments of data operation\n     *\n     * @typedef { object }\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    type Options = {\n        /**\n         * Indicates the target Intention\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the target Intention\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        intention?: Intention;\n        /**\n         * Indicates the unique identifier of target UnifiedData\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @since 10\n         */\n        /**\n         * Indicates the unique identifier of target UnifiedData\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 11\n         */\n        key?: string;\n    };\n    /**\n     * Defines the types of file conflict options when getting data from the UDMF.\n     *\n     * @enum { number }\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 15\n     */\n    enum FileConflictOptions {\n        /**\n         * Overwrite when destUri has file with same name.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        OVERWRITE,\n        /**\n         * Skip when destUri has file with same name.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        SKIP\n    }\n    /**\n     * Defines the types of progress indicator when getting data from the UDMF.\n     *\n     * @enum { number }\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 15\n     */\n    enum ProgressIndicator {\n        /**\n         * Getting data without system default progress indicator.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        NONE,\n        /**\n         * Getting data with system default progress indicator.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        DEFAULT\n    }\n    /**\n     * Defines the listener status of obtaining progress and data.\n     *\n     * @enum { number }\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 15\n     */\n    enum ListenerStatus {\n        /**\n         * Indicates the finished status.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        FINISHED = 0,\n        /**\n         * Indicates that processing is still in progress.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        PROCESSING,\n        /**\n         * Indicates that the process has been canceled.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        CANCELED,\n        /**\n         * Indicates that an internal error has occurred.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        INNER_ERROR = 200,\n        /**\n         * Indicates that the GetDataParams contains invalid parameters.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        INVALID_PARAMETERS,\n        /**\n         * Indicates that no data is obtained.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        DATA_NOT_FOUND,\n        /**\n         * Indicates that an error occurred in the synchronization process.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        SYNC_FAILED,\n        /**\n         * Indicates that an error occurred during file copying.\n         *\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        COPY_FILE_FAILED\n    }\n    /**\n     * Indicates the progress information.\n     *\n     * @interface ProgressInfo\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 15\n     */\n    interface ProgressInfo {\n        /**\n         * Indicates the UDMF processing progress.\n         *\n         * @type { number }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        progress: number;\n        /**\n         * Indicates the status of obtaining progress and data.\n         *\n         * @type { ListenerStatus }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        status: ListenerStatus;\n    }\n    /**\n     * A listener callback function that fetches progress info and data.\n     *\n     * @typedef { function } DataProgressListener\n     * @param { ProgressInfo } progressInfo - the progress information.\n     * @param { UnifiedData | null } data - Data obtained when the progress reaches 100%.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 15\n     */\n    type DataProgressListener = (progressInfo: ProgressInfo, data: UnifiedData | null) => void;\n    /**\n     * Represents the get data parameters when getting data from udmf.\n     *\n     * @interface GetDataParams\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 15\n     */\n    interface GetDataParams {\n        /**\n         * Indicates whether to use default system progress indicator.\n         *\n         * @type { ProgressIndicator }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        progressIndicator: ProgressIndicator;\n        /**\n         * Indicates progress and data listener when getting unified data.\n         *\n         * @type { DataProgressListener }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        dataProgressListener: DataProgressListener;\n        /**\n         * Indicates the dest path uri where copy file will be copied to sandbox of application.\n         *\n         * @type { string }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        destUri?: string;\n        /**\n         * Indicates file conflict options when dest path has file with same name.\n         *\n         * @type { FileConflictOptions }\n         * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n         * @atomicservice\n         * @since 15\n         */\n        fileConflictOptions?: FileConflictOptions;\n    }\n    /**\n     * Insert data into unified data channel by Intention\n     *\n     * @param { Options } options - fill the intention field to indicate the target {@link Intention}.\n     * @param { UnifiedData } data - {@link UnifiedData} data object to insert into target intention.\n     * @param { AsyncCallback<string> } callback - {string}: the unique identifier.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Insert data into unified data channel by Intention\n     *\n     * @param { Options } options - fill the intention field to indicate the target {@link Intention}.\n     * @param { UnifiedData } data - {@link UnifiedData} data object to insert into target intention.\n     * @param { AsyncCallback<string> } callback - {string}: the unique identifier.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    function insertData(options: Options, data: UnifiedData, callback: AsyncCallback<string>): void;\n    /**\n     * Insert data into unified data channel by Intention\n     *\n     * @param { Options } options - fill the intention field to indicate the target {@link Intention}.\n     * @param { UnifiedData } data - {@link UnifiedData} data object to insert into target intention.\n     * @returns { Promise<string> } {string}: the unique identifier.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Insert data into unified data channel by Intention\n     *\n     * @param { Options } options - fill the intention field to indicate the target {@link Intention}.\n     * @param { UnifiedData } data - {@link UnifiedData} data object to insert into target intention.\n     * @returns { Promise<string> } {string}: the unique identifier.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    function insertData(options: Options, data: UnifiedData): Promise<string>;\n    /**\n     * Update data to unified data channel by Unique Identifier\n     *\n     * @param { Options } options - fill the unique identifier field to indicate the target {@link UnifiedData}.\n     * @param { UnifiedData } data - {@link UnifiedData} data object to update the target data.\n     * @param { AsyncCallback<void> } callback - the callback of updateData.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Update data to unified data channel by Unique Identifier\n     *\n     * @param { Options } options - fill the unique identifier field to indicate the target {@link UnifiedData}.\n     * @param { UnifiedData } data - {@link UnifiedData} data object to update the target data.\n     * @param { AsyncCallback<void> } callback - the callback of updateData.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    function updateData(options: Options, data: UnifiedData, callback: AsyncCallback<void>): void;\n    /**\n     * Update data to unified data channel by Unique Identifier\n     *\n     * @param { Options } options - fill the unique identifier field to indicate the target {@link UnifiedData}.\n     * @param { UnifiedData } data - {@link UnifiedData} data object to update the target data.\n     * @returns { Promise<void> } the promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Update data to unified data channel by Unique Identifier\n     *\n     * @param { Options } options - fill the unique identifier field to indicate the target {@link UnifiedData}.\n     * @param { UnifiedData } data - {@link UnifiedData} data object to update the target data.\n     * @returns { Promise<void> } the promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    function updateData(options: Options, data: UnifiedData): Promise<void>;\n    /**\n     * Query data of unified data channel by Intention or Unique Identifier\n     *\n     * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention}\n     * or {@link UnifiedData}.\n     * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the target {@link UnifiedData}\n     * object array.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Query data of unified data channel by Intention or Unique Identifier\n     *\n     * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention}\n     * or {@link UnifiedData}.\n     * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the target {@link UnifiedData} object\n     *  array.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    function queryData(options: Options, callback: AsyncCallback<Array<UnifiedData>>): void;\n    /**\n     * Query data of unified data channel by Intention or Unique Identifier\n     *\n     * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention}\n     * or {@link UnifiedData}.\n     * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the target {@link UnifiedData} object array.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Query data of unified data channel by Intention or Unique Identifier\n     *\n     * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention}\n     * or {@link UnifiedData}.\n     * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the target {@link UnifiedData} object array.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    function queryData(options: Options): Promise<Array<UnifiedData>>;\n    /**\n     * Delete data of unified data channel by Intention or Unique Identifier\n     *\n     * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention}\n     * or {@link UnifiedData}.\n     * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the deleted {@link UnifiedData}\n     * object array.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Delete data of unified data channel by Intention or Unique Identifier\n     *\n     * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention}\n     * or {@link UnifiedData}.\n     * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the deleted {@link UnifiedData}\n     * object array.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    function deleteData(options: Options, callback: AsyncCallback<Array<UnifiedData>>): void;\n    /**\n     * Delete data of unified data channel by Intention or Unique Identifier\n     *\n     * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention}\n     * or {@link UnifiedData}.\n     * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the deleted {@link UnifiedData} object array.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @since 10\n     */\n    /**\n     * Delete data of unified data channel by Intention or Unique Identifier\n     *\n     * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention}\n     * or {@link UnifiedData}.\n     * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the deleted {@link UnifiedData} object array.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified;\n     * <br>2.Incorrect parameters types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @atomicservice\n     * @since 11\n     */\n    function deleteData(options: Options): Promise<Array<UnifiedData>>;\n    \n    /**\n     * Sets the ShareOptions for the application data. Currently, only the drag-and-drop data channel is supported.\n     *\n     * @permission ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION\n     * @param { Intention } intention - Describe the sharing channel that UDMF support. Currently only supports DRAG\n     * intention.\n     * @param { ShareOptions } shareOptions - Types of scope that UnifiedData can be used.\n     * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission\n     * required to call the API.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;\n     *                                                                   2. Incorrect parameter types;\n     *                                                                   3. Parameter verification failed.\n     * @throws { BusinessError } 20400001 - Settings already exist. To reconfigure, remove the existing sharing options.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @stagemodelonly\n     * @since 14\n     */\n    function setAppShareOptions(intention: Intention, shareOptions: ShareOptions): void;\n    \n    /**\n     * Remove app sharing options.\n     *\n     * @permission ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION\n     * @param { Intention } intention - Describe the sharing channel that UDMF support. Currently only supports DRAG\n     * intention.\n     * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission\n     * required to call the API.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;\n     *                                                                   2. Incorrect parameter types;\n     *                                                                   3. Parameter verification failed.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @stagemodelonly\n     * @since 14\n     */\n    function removeAppShareOptions(intention: Intention): void;\n    /**\n     * Converts the provided data into a multi-style data structure, which is useful when the original data uses multiple\n     * records to represent different styles of the same data. This API is used only when the following rules are met:\n     * 1.The number of records in data is greater than\n     * 2.The value of unifiedData.properties.tag is records_to_entries_data_format.\n     *\n     * @param { UnifiedData } data - {@link UnifiedData} Data to convert.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified.\n     * 2. Incorrect parameter types.\n     * @syscap SystemCapability.DistributedDataManager.UDMF.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 17\n     */\n    function convertRecordsToEntries(data: UnifiedData): void;\n}\nexport default unifiedDataChannel;\n",
}
export default FILE;